/**  
 * All rights Reserved, Designed By www.flksh.com
 * @date:   2017-10-26 15:32:46   
 * @Copyright: 2013-2017 www.flksh.com Inc. All rights reserved. 
 * 注意：本内容仅限于上海福乐康社区养老服务有限公司内部传阅，禁止外泄以及用于其他的商业目
 */
package com.zx.cloud.domain;

import java.time.OffsetDateTime;

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.zx.cloud.model.BasicDomain;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.zx.cloud.util.converter.jackson.OffsetDateTimeToIso8601Serializer;

import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import lombok.ToString;

/**
 * 
 * schedule_job-定时任务
 *
 */
@ToString
@EqualsAndHashCode(callSuper = true)
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonIgnoreProperties(value = {"hibernateLazyInitializer", "handler", "fieldHandler"}, ignoreUnknown = true)
public class ScheduleJob extends BasicDomain{

	private static final long serialVersionUID = 1L;
    
	/**
	 * 
	 */
	 @ApiModelProperty(value = "任务组",example="jobGroup")
	 private String jobGroup;
	/**
	 * 
	 */
	 @ApiModelProperty(value = "任务名",example="jobName")
	 private String jobName;
	/**
	 * 
	 */
	 @ApiModelProperty(value = "任务执行方法类",example="com.zx.cloud.job.TaskExcutor")
	 private String className;
	/**
	 * 
	 */
	 @ApiModelProperty(value = "任务执行方法名",example="buildOverdue")
	 private String methodName;
	/**
	 * 
	 */
	 @ApiModelProperty(value = "任务组",example="*/5 * * * * ?")
	 private String cronExpression;
	/**
	 * 
	 */
	 @ApiModelProperty(value = "描述",example="任务描述")
	 private String description;
	/**
	 * 
	 */
	@ApiModelProperty(value = "")
	@JsonSerialize(using = OffsetDateTimeToIso8601Serializer.class)		
	 private OffsetDateTime createTime;
	
	 private String createTimeStr;
	 
	 /**
	  * 上一次运行时间
	  */
	 private String previousFireTime;
	 /**
	  * 下一次运行时间
	  */
	 private String nextFireTime;
	 
	/**
	 * 
	 */
	@ApiModelProperty(value = "")
	 private String status;
    
    public ScheduleJob(){
    
    }
    
    public String getPreviousFireTime() {
		return previousFireTime;
	}



	public void setPreviousFireTime(String previousFireTime) {
		this.previousFireTime = previousFireTime;
	}



	public String getNextFireTime() {
		return nextFireTime;
	}



	public void setNextFireTime(String nextFireTime) {
		this.nextFireTime = nextFireTime;
	}



	public String getCreateTimeStr() {
		return createTimeStr;
	}

	public void setCreateTimeStr(String createTimeStr) {
		this.createTimeStr = createTimeStr;
	}

	public String getJobGroup() {
        return this.jobGroup;
    }
    
    public void setJobGroup(String jobGroup) {
        this.jobGroup = jobGroup;
    }
    public String getJobName() {
        return this.jobName;
    }
    
    public void setJobName(String jobName) {
        this.jobName = jobName;
    }
    public String getClassName() {
        return this.className;
    }
    
    public void setClassName(String className) {
        this.className = className;
    }
    public String getMethodName() {
        return this.methodName;
    }
    
    public void setMethodName(String methodName) {
        this.methodName = methodName;
    }
    public String getCronExpression() {
        return this.cronExpression;
    }
    
    public void setCronExpression(String cronExpression) {
        this.cronExpression = cronExpression;
    }
    public String getDescription() {
        return this.description;
    }
    
    public void setDescription(String description) {
        this.description = description;
    }
    public OffsetDateTime getCreateTime() {
        return this.createTime;
    }
    
    public void setCreateTime(OffsetDateTime createTime) {
        this.createTime = createTime;
    }
    public String getStatus() {
        return this.status;
    }
    
    public void setStatus(String status) {
        this.status = status;
    }
    
}
